﻿using QuanLyGiaoVuDAL.DTO;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace QuanLyGiaoVuService.ReportServices
{
    public interface IGiangVienReportService
    {
        IEnumerable<GiangVienDTO> GetAllGiangVien();
        GiangVienDTO GetGiangVienById(Guid id);
        GiangVienDTO GetGiangVienByEmail(String email);
        IEnumerable<ChucVuDTO> GetAllChucVu();
        IEnumerable<ChucVuDTO> GetAllChucVuGiangVien(Guid id);
        IEnumerable<HocViDTO> GetAllHocVi();
        IEnumerable<HocHamDTO> GetAllHocHam();
        IEnumerable<MonHocDTO> GetAllMonHocByGiangVienId(Guid giangVienId);
        IEnumerable<MonHocDTO> GetAllMonHocChuaChonByGiangVienId(Guid giangVienId, Guid? maLop);
        ChucVuDTO GetChucVuByChucVuId(Guid ChucVuId);
        IEnumerable<ChucVuDTO> GetAllChucVuChuaKiemNhiemByGiangVienId(Guid giangVienId);
        IEnumerable<ChucDanhDTO> GetAllChucDanh();
        ChucDanhDTO GetChucDanhByMaChucDanh(Guid maChucDanh);
        IEnumerable<BoMonDTO> GetAllBoMon();
        LichRanhDTO GetLichRanhById(Guid lichRanhId);
        IEnumerable<LichRanhDTO> GetAllLichRanh(Guid? maGiangVien, bool? buoi, int? thu);
        IList<String> GetEmailListByGiangVienIdList(string giangVienIdList);
    }
}
